An overview of the research in the field of intelligent tutorial systems (ITS) is provided. The various approaches in the design and implementation of ITS are examined and discussed in the context of problem solving in an environment of a complex dynamic system (CDS). Issues pertaining to a CDS and the nature of human problem solving especially in light of a CDS are considered. An overview of the architecture of an ITS is provided as the basis for the in-depth examination of various systems. Finally, the implications for the design and evaluation of an ITS are discussed.